import request from '@/config/axios'

// 家族成员 VO
export interface MembersVO {
  id: number // 主键ID
  name: string // 成员姓名
  gender: string // 性别（男/女/其他）
  birthDate: Date // 出生日期
  deathDate: Date // 逝世日期（可选）
  contactInfo: string // 联系方式
  photoUrl: string // 成员照片URL
  biography: string // 成员生平简介
  generation: number // 成员在家族中的代数
}

// 家族成员 API
export const MembersApi = {
  // 查询家族成员分页
  getMembersPage: async (params: any) => {
    return await request.get({ url: `/family/members/page`, params })
  },

  // 查询家族成员详情
  getMembers: async (id: number) => {
    return await request.get({ url: `/family/members/get?id=` + id })
  },

  // 新增家族成员
  createMembers: async (data: MembersVO) => {
    return await request.post({ url: `/family/members/create`, data })
  },

  // 修改家族成员
  updateMembers: async (data: MembersVO) => {
    return await request.put({ url: `/family/members/update`, data })
  },

  // 删除家族成员
  deleteMembers: async (id: number) => {
    return await request.delete({ url: `/family/members/delete?id=` + id })
  },

  // 导出家族成员 Excel
  exportMembers: async (params) => {
    return await request.download({ url: `/family/members/export-excel`, params })
  },
}